ROUTE(8) | Linux Programmer's Manual | ROUTE(8) |
名前¶
route - IP 経路テーブルの表示/設定
書式¶
route [-CFvnee]
説明¶
route はカーネルの IP 経路テーブルを操作する。 その主な目的は、特定のホストやネットワークへの静的な経路を設定することである。 経路に用いるインターフェースは、このコマンドの前に ifconfig(8) で設定しておく必要がある。
add または del オプションを使うと、 route は経路テーブルを変更できる。 これらのオプションを指定しない場合、 route は現在の経路テーブルの内容を表示する。
オプション¶
- -A family
- 指定したアドレスファミリーを使う (例えば `inet' を指定する。 全リストを表示するには `route --help' を使うこと)。
- -F
- カーネルの FIB (Forwarding Information Base) 経路テーブルを操作する。 これはデフォルトである。
- -C
- カーネルの経路テーブルを操作する。
- -v
- 操作の際に詳細表示するモードを選択する。
- -n
- ホスト名を解決せず、アドレスを数値で表示する。 これはネームサーバが見つからない場合など、 ホスト名の解決ができない場合に有用である。
- -e
- 経路テーブルの表示に netstat(8) のフォーマットを使用する。 -ee は経路情報のすべてのパラメータを 1 行で表示する。
- del
- 経路を削除する。
- add
- 新しい経路を追加する。
- target
- 対象とするネットワークまたはホストを指定する。 10 進ドット表記の IP アドレスか、 ホスト名もしくはネットワーク名を指定可能である。
- -net
- target をネットワークとする。
- -host
- target をホストとする。
- netmask NM
- ネットワーク経路を追加する場合、そこで使用されるネットマスク。
- gw GW
- ゲートウェイを経由した経路パケット。 注意: 記述されたゲートウェイは、まず到達可能でなければならない。 これは通常、前もってゲートウェイに静的経路を 設定しなくてはならないということである。 もし、ローカルのインタフェースのアドレスを指定した場合は、 それはパケットが通過すべきインタフェースの決定に使用される。 これは BSD の手法にのっとったやり方である。
- metric M
- 経路テーブルのメトリック (経路制御デーモンが使用する) を M に設定する。
- mss M
- 指定の経路での接続の TCP 最大セグメントサイズ (MSS) を M バイトに設定する。 デフォルトはデバイスの MTU (Maximum Transmission Unit, 最大送信単位) から ヘッダーを引いたサイズである。 また、ネットワークパスの MTU が見つかった場合、 小さい方の MTU がデフォルトになる。 この設定は、ネットワークパスの MTU を見付けることができなかった場合 (これは ICMP Fragmentation Needed をブロックしてしまう、 間違って設定されたファイヤーウォールなどのために起こる)、 相手側 TCP パケットを強制的に小さくするために使われる。
- window W
- 指定の経路での接続の TCP ウィンドウサイズを W バイトに設定する。 これは一般に AX.25 ネットワークや、 連続的に送られるフレームを取りこぼしてしまうようなドライバーでのみ使用される。
- irtt I
- 指定の経路での TCP 接続の初期ラウンドトリップ時間 (irtt) を I (1-12000) ミリ秒の範囲で設定する。 これは一般的に AX.25 ネットワークでのみ使用される。 省略した場合、RFC 1122 でデフォルトとされている 300 ミリ秒が使用される。
- reject
- ブロックする経路を設定する。 これは経路参照の失敗を強制し、例えば、デフォルトの経路を使用せずに、 ネットワークを使わないようにしてしまう場合などに用いる。 これは、ファイアーウォールの設定では"ない"。
- mod, dyn, reinstate
- 動的な経路や変更経路を設定する。 これらのフラグは診断の用途に使われ、 一般的には経路制御デーモンによってのみ設定される。
- dev If
- 記述されたデバイスに、経路を関連づけることを強制する。
通常カーネルは自分自身でデバイスを決定しようとする
(すでにある経路とデバイスの記述、経路がどこに追加されているかによる)。
一般的なネットワークでは、これを指定する必要はない。
もし dev If がコマンド・ラインの最後のオプションの場合には、 dev という語は省略しても良い。 他の場合では、経路修飾子の順番 (metric -netmask - gw - dev) は重要ではない。
例¶
- route add -net 127.0.0.0
- ネットマスク 255.0.0.0 で (クラス A のネットワークが、対象アドレスから決定される)、 通常のループバックを追加する。 それは、 lo デバイスに関連づけれられる (このデバイスは ifconfig(8) に前もって設定されていると仮定している)。
- route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
- eth0 経由のネットワーク 192.56.76.x を追加する。 ここでの 192.* はクラス C の IP アドレスなので、 クラス C のこのネットマスク修飾子は必須ではない。 この場合 dev という語は省略可能である。
- route add default gw mango-gw
- デフォルト経路 (適切な経路が他にない場合に使用されるもの) を追加する。 この経路を使用するすべてのパケットは、 "mango-gw" を経由する。 デバイスは "mango-gw" に到達する上で実際に使用する経路に依存する。 - "mango-gw" に対する静的経路があらかじめ設定されている必要がある。
- route add ipx4 sl0
- "ipx4" に対する経路を SLIP インタフェース経由 ("ixp4" は SLIP ホストであると仮定する) で追加する。
- route add -net 192.57.66.0 netmask 255.255.255.0 gw ipx4
- 前述の SLIP インタフェース経路をゲートウェイとして、 ネットワーク "192.57.66.x" を追加する。
- route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
- この設定はわかりにくいので、あえて記述した。 これは全てのクラス D (マルチキャスト) IP の経路が "eth0" を通って行くように設定する。 これはマルチキャスト・カーネルの正しい設定である。
- route add -net 10.0.0.0 netmask 255.0.0.0 reject
- プライベートネットワーク "10.x.x.x" への経路を 拒否 (reject) するように設定する。
出力¶
カーネル経路テーブルの出力は、以下の項目で構成される。
- Destination
- 対象ネットワークもしくはホスト。
- Gateway
- ゲートウェイのアドレスか、 設定されていないなら '*' である。
- Genmask
- Genmask は対象ネットワークのネットマスクである。 '255.255.255.255' は、ホストが対象である場合のマスクで、 '0.0.0.0' は、 デフォルト 経路のネットマスクである。
- Flags
- 指定可能なフラグとしては、以下のものがある。
U (経路は 有効 になっている)
H (ターゲットは ホスト である)
G (ゲートウェイ を使用する)
R (回復 される動的経路)
D (デーモンもしくは置き換えによる 動的な 設定である)
M (経路制御デーモンもしくは置き換えによる 変更 である)
A (addrconf により設定されている)
C (キャッシュ のエントリーである)
! (拒否 (reject) する経路である) - Metric
- ターゲットの距離 (通常はホップ数) である。 最近のカーネルでは無視されるが、 経路制御デーモンが必要とする可能性がある。
- Ref
- 指定のルートの参照数 (Linux カーネルでは使用しない)。
- Use
- 経路の参照回数である。 -F と -C オプションの使用に依存する。 これは経路キャッシュが失敗 (-F) とヒット (-C) した回数である。
- Iface
- この経路で使用するインタフェースである。
- MSS
- この経路での TCP 接続のデフォルト最大セグメントである。
- Window
- この経路での TCP 接続のデフォルトのウィンドウ・サイズである。
- irtt
- 初期 RTT (ラウンドトリップ時間) である。 カーネルは、(遅いと思われる) 返信の待ち時間を含まない 最良の TCP プロトコルパラメーターを推測するために、この値を使う。
- HH (キャッシュのみ)
- キャッシュされた経路のうちハードウェア・ヘッダー・キャッシュを参照するものと ARP エントリの数である。 キャッシュされた経路のインタフェースが ハードウェア・アドレスを必要としない場合 (例えば lo) では、 この値は -1 になる。
- Arp (キャッシュのみ)
- キャッシュされた経路に対するハードウェアアドレスの更新状況である。
ファイル¶
/proc/net/ipv6_route
/proc/net/route
/proc/net/rt_cache
関連項目¶
履歴¶
Linux 用の route コマンドは、 最初に Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> によって書かれ、 Johannes Stille と Linus Torvalds により pl15 に更新された。 Alan Cox は mss と window オプションを Linux 1.1.22 で追加した。 irtt のサポートと netstat への併合は Bernd Eckenfels によるものである。
著者¶
現在は Phil Blundell <Philip.Blundell@pobox.com> がメンテナンスしている。
2 January 2000 | net-tools |